package com.renwen.sms.service;

import com.renwen.sms.dto.ClassDto;
import com.renwen.sms.dto.PageResult;
import com.renwen.sms.entity.Class;
import com.renwen.sms.entity.SelectTeacher;
import com.renwen.sms.util.Result;

import java.util.Map;

/**
 * 班级信息
 */
public interface ClassService {

    /**
     * 分页查询所有班级信息
     * @param page 页码
     * @param size 每页显示条数
     * @param searchMap 搜索条件
     * @return 班级列表
     */
    PageResult<ClassDto> list(Integer page, Integer size, Map<String, Object> searchMap);

    /**
     * 添加班级
     * @param  aClass 班级对象
     */
    void save(Class aClass);
    /**
     * 修改班级信息
     * @param  aClass 班级对象
     */
    void update(Class aClass);

    /**
     * 根据班级编号查询班级信息
     * @param id 班级编号
     * @return 班级信息
     */
    Result get(Integer id);

    /**
     * 根据班级号删除
     */
    void delete(String clsNo);

    /**
     * 批量删除班级信息
     * @param ids 班级编号列表
     */
    void batchDelete(String ids);

    /**
     * 为未安排班级的教师指定当前班级
     */
    void selectTeacher(SelectTeacher selectTeacher);
}
